package com.wgy.day32字符流.字符输出流;

import java.io.FileWriter;
import java.io.IOException;

/*
java.io.Writer:字符输出流,是所有字符输出流的最顶层的父类,是一个抽象类
   共性的成员方法:
   void write(int c):写入单个字符.
   void write(char[] cbuf):写入字符数组.
   abstract void write(char[] cbuf,int off,int len):写入字符数组的某一部分,off数组的开始索引,len写的字符个数.
   void write(String str):写入字符串.
   void write(String str,int off,int len):写入字符串的某一部分,off字符串的开始索引,len写的字符个数.
   void flush():刷新该流的缓冲
   voide close():关闭流,但要先刷新它

java.io.FliesWriter extends OutputStreamWriter extends Writer
 FliesWriter :文件字符输出流
          作用:把内存中的字符数据写入到文件中
       构造方法: FliesWriter (String fileName):根据给定的文件名构造一个FileWriter对象
               FliesWriter (File file):根据给定的File对象构造一个FileWriter对象
                  参数: String fileName:文件的一个路径
                             File file:是一个文件
  构造方法的作用: 1.会创建一个FileWriter对象对象
               2.会根据构造方法中传递的文件/文件路径,创建文件(原本存在的文件,直接覆盖重写)
               3.会把FileWriter对象指向创建好的文件

 字符输出流的使用步骤:
               1.创建一个FileWriter对象对象,构造方法中绑定要写入数据的目的地
               2.使用FileWriter中的方法write,把数据写入到内存缓冲区中(字符转换为字节的过程)
               3.使用FileWriter中的方法flush,把内存缓冲区中的数据,刷新到文件中
               4.释放资源(会先把内存缓冲区中的数据刷新到文件中)
*/
public class Demo01Writer {
    public static void main(String[] args) throws IOException {
        // 1.创建一个FileWriter对象对象,构造方法中绑定要写入数据的目的地
        FileWriter fw = new FileWriter("D:\\小云\\abc\\b\\c.txt");

        // 2.使用FileWriter中的方法write,把数据写入到内存缓冲区中(字符转换为字节的过程)
        //使用write(int c)写入单个字符
        fw.write(97);

        //3.使用FileWriter中的方法flush,把内存缓冲区中的数据,刷新到文件中
        fw.flush();

        //4.释放资源(会先把内存缓冲区中的数据刷新到文件中)
        fw.close();
    }
}
